1. Field of the Invention
This invention relates to a method and apparatus for controlling an industrial robot based on storing in advance either the amount of bending of an industrial robot arm when a workpiece having a predetermined weight W.sub.o is gripped, or information which enables the amount of bending to be estimated, computing the amount of bending of the arm owing to a workpiece whose weight W differs from the weight W.sub.o by using either the stored amount of bending or the information which enables the amount of bending to be estimated, as well as W.sub.o, W and the like, and correcting the position of the arm based on the calculated amount of bending.
2. Description of the Prior Art
The rising cost of labor has given rise to a demand for labor-saving measures and for improvements in work procedures. Industrial robots have been put into use to meet this demand and have been very successful in doing so. Particularly outstanding results have been achieved in plants having numerous machine tools where industrial robots are used to perform such simple services as changing the workpieces and tools associated with each machine tool. The demand for such robots has grown yearly. Such industrial robots have a mechanical hand for gripping a workpiece at such time the workpiece is to be exchanged, a wrist capable of being twisted and tilted up and down, an arm which can be freely extended and retracted in the radial direction, a casing which can be moved vertically along the Z-axis and swiveled in the rotational direction, and the like. The mechanical hand, which is moved in the radial and rotational directions and along the Z-axis on the basis of taught data, mounts an unfinished workpiece in the chuck of a lathe, by way of example, and removes the machined workpiece from the chuck. When the mechanical hand is made to grip a load of considerable weight (such as a workpiece), the arm tends to bend in the direction of the force of gravity (along the Z-axis). Consequently, when the robot is taught its services in the absence of a load (that is, without the hand gripping an object) and the robot is then controlled on the basis of the taught data, the position of the arm will be displaced from the taught position by the amount of bending when a workpiece is to be mounted in the chuck of a lathe or the like. This makes it impossible to mount the workpiece in the chuck with great accuracy and, in extreme cases, may make it impossible to mount the workpiece at all. Conversely, when the robot is taught while the hand is gripping a workpiece of a predetermined weight, the workpiece cannot be gripped accurately when it is to be removed from the chuck. This may cause the workpiece to fall or make it impossible to remove the workpiece.
It has been conventional practice to teach the robot while it is actually being made to mount and remove a workpiece. The mounting and unmounting operations are taught each time the weight of a workpiece changes in order to eliminate a positioning error or operational error caused by the amount of bending. However, carrying out these teaching operations one at a time is troublesome and considerably time-consuming, resulting in markedly reduced robot service efficiency.